package cn.edu.hunan.pm.util;
import java.io.Serializable;

public class JsonResult<E> implements Serializable{

    private Integer state;
    private String message;
    private E data;

    /**
     * 构造函数，用于创建一个空的 JsonResult 对象。
     */
    public JsonResult() {

    }

    /**
     * 构造函数，用于创建一个 JsonResult 对象，并初始化其状态码。
     *
     * @param state 结果的状态码，用于表示操作的成功与否或特定的执行状态。
     */
    public JsonResult(Integer state) {
        this.state = state;
    }

    /**
     * 构造函数，用于创建一个 JsonResult 对象，并初始化其错误信息。
     *
     * @param e 抛出的异常，其信息将被用于初始化 JsonResult 的错误信息。
     */
    public JsonResult(Throwable e) {
        this.message = e.getMessage();
    }


    public E getData() {
        return data;
    }

    public void setData(E data) {
        this.data = data;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }

    public Integer getState() {
        return state;
    }

    public void setState(Integer state) {
        this.state = state;
    }

    public JsonResult(Integer state, E data) {
        this.state = state;
        this.data = data;
    }
}
